function NW04_mb_sx(fq) {
    this.nw = fq.fq.fq;//nw对象
    this.gj = fq.gj;
}

/**
 * 翻译 模板（替换模板 占位符）
 * @参数 {文本|对象} JieDianHuoZJ 节点对象|节点id|NW封装节点对象
 * @参数 {对象} DX 数据对象
 */
NW04_mb_sx.prototype.fy = function (JieDianHuoZJ, DX) {

    let _$Jiedian = this.nw.cj(JieDianHuoZJ);
    let _SXS = _$Jiedian.jd.hqMBsxM();

    let _mb_S;
    for (let i = 0; i < _SXS.length; i++) {
        if (_SXS[i]) {
            // 分析出【模板】
            _mb_S = this.gj.fenxi(_SXS[i].value)
            // 将模板中的数据替换成 DX指定的值
            this._ngj_fy(_SXS[i], _mb_S, DX);
        }
    }
}

/**
 * 翻译 模板（替换模板 占位符）
 * @参数 {文本|对象} WBS   节点对象|节点id|NW封装节点对象
 * @参数 {对象} DX         数据对象
 */
NW04_mb_sx.prototype.fy_tgSXm = function (SXS, DX) {
    if (null == SXS || SXS.length == 0) {
        return;
    }
    let _mb_S;
    for (let i = 0; i < SXS.length; i++) {
        if (SXS[i]) {
            _mb_S = this.gj.fenxi(SXS[i].value)
            this._ngj_fy(SXS[i], _mb_S, DX);
        }
    }
}

/**
 * 取得翻译后的模板
 * @参数 {对象} ShuxingJiedian 文本节点 对象
 * @返回 {数组|null} 执行 翻译后的 模板组
 */
NW04_mb_sx.prototype.hqMB = function (ShuxingJiedian) {
    return this.gj.fenxi(typeof ShuxingJiedian == 'string' ? ShuxingJiedian : ShuxingJiedian.value)
}

/**
 * 执行一个文本节点 的模板 翻译 ffyDanMB（ 翻译单模板 ）
 * @param {对象} SXJiedian 文本对象（1个）
 * @param {模板} MB 文本相关的模板
 * @param {对象} DX 动态参数（参数值用于替换 模板中的变量；参数名与模板中的变量名一 一 对应）
 */
NW04_mb_sx.prototype._ngj_fy = function (SXJiedian, MB, DX) {
    if (MB) {
        let _blMingHuoZhi;    //变量名，或 文本值
        let _zhi = '';

        for (let i = 0; i < MB.YuanS.length; i++) {
            _blMingHuoZhi = MB.YuanS[i];

            if (MB.YBS.indexOf(i) != -1) {
                //表示此i个格子( MB.YuanS[i] )，放的是  变量
                if (DX && DX[_blMingHuoZhi] != null) {
                    _blMingHuoZhi = DX[_blMingHuoZhi];
                } else {
                    _blMingHuoZhi = ''
                }
                _zhi += _blMingHuoZhi;
            } else {
                //表示此i个格子( MB.YuanS[i] )，放的是  文本值
                _zhi += MB.YuanS[i];
            }
        }
        SXJiedian.value = _zhi;
    }
}